﻿using Microsoft.Xna.Framework.Graphics;

namespace Innovator
{
	public static class GraphicsUtil
	{
		public static RenderTarget2D CreateRenderTarget()
		{
			return CreateRenderTarget(Engine.GraphicsDevice.Viewport.Width,
				Engine.GraphicsDevice.Viewport.Height);
		}
		public static RenderTarget2D CreateRenderTarget(int Width, int Height)
		{
			return CreateRenderTarget(Width, Height, Engine.GraphicsDevice.DisplayMode.Format);
		}
		public static RenderTarget2D CreateRenderTarget(int Width, int Height, SurfaceFormat Format)
		{
			return CreateRenderTarget(Width, Height, Format,
				Engine.GraphicsDevice.PresentationParameters.MultiSampleQuality,
				Engine.GraphicsDevice.PresentationParameters.MultiSampleType);
		}
		public static RenderTarget2D CreateRenderTarget(int Width, int Height, SurfaceFormat Format,
			int MultiSampleQuality, MultiSampleType SampleType)
		{
			return new RenderTarget2D(Engine.GraphicsDevice, Width, Height, 1, Format, SampleType, MultiSampleQuality, RenderTargetUsage.DiscardContents);
		}
		public static ResolveTexture2D CreateResolveTexture()
		{
			return new ResolveTexture2D(Engine.GraphicsDevice,
				Engine.GraphicsDevice.Viewport.Width,
				Engine.GraphicsDevice.Viewport.Height, 1,
				Engine.GraphicsDevice.DisplayMode.Format);
		}
	}
}